"""
    1. 定位功能
        locateOnScreen("image.png")
            调用该locateOnScreen('calc7key.png')函数来获取屏幕坐标。返回值是一个 4 整数元组：（左、上、宽、高）
            可选的confidence关键字参数指定函数在屏幕上定位图像的精度。如果该函数由于像素差异可以忽略不计而无法定位图像
                注意：您需要安装OpenCV才能使confidence关键字起作用。
    2. 获取该区域中心
        center()
            获取该区域中心的 X 和 Y 坐标
    3. 定位并获取该区域中心
        locateCenterOnScreen()
            结合了locateOnScreen()和center()
    4. 获取多个图标在屏幕上的定位
        locateAllOnScreen()
            locateAllOnScreen()函数可以在 for 循环中使用或传递给list()
            pyautogui.locateOnScreen('someButton.png', region=(0,0, 300, 400))
                这些“定位”功能相当昂贵；他们可以花整整一秒钟的时间来奔跑。
                加快速度的最佳方法是传递一个region参数（一个 4 整数元组（左、上、宽、高））以仅搜索屏幕的较小区域而不是整个屏幕
"""

import pyautogui

# 1. 定位功能
buttonLocation = pyautogui.locateOnScreen('../image/回收站.png')
# buttonLocation = pyautogui.locateOnScreen('../image/回收站.png', confidence=0.9)
print(buttonLocation)

# 2. 获取该区域中心
buttonPoint = pyautogui.center(buttonLocation)
buttonX, buttonY = buttonPoint
pyautogui.click(buttonX, buttonY, 2)  # clicks the center of where the 7 button was found
pyautogui.click('../image/回收站.png', 2)  # a shortcut version to click on the center of where the 7 button was found

# 3. 定位并获取该区域中心
x, y = pyautogui.locateCenterOnScreen('../image/回收站.png')
pyautogui.click(x, y)

# 4. 获取多个图标在屏幕上的定位
for pos in pyautogui.locateAllOnScreen('someButton.png'):
    print(pos)
